.product {
  height: calc(100vh - env(safe-area-inset-bottom));
  background-color: #f5f5f5;

  .product-container {
    height: calc(100vh - env(safe-area-inset-bottom) - 100rpx);
    background-color: #f5f5f5;
  }

  .product-bottom-region {
    height: 100rpx;
    background-color: #fff;
    border-top: 2rpx solid #dcdcdc;
    display: flex;
    align-items: center;

    .product-bottom-region-buttons {
      width: 300rpx;
      height: 100%;
      box-sizing: border-box;
      padding-top: 8rpx;
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      justify-items: center;
      align-items: center;
      background-color: #fff;

      .product-bottom-region-button {
        display: flex;
        flex-direction: column;
        align-items: center;

        .product-bottom-region-button-icon {}

        .product-bottom-region-button-text {
          font-size: 23rpx;
        }
      }

      .shipping-cart-button {
        position: relative;

        .shippingcart-dot {
          right: -10rpx;
          top: -10rpx;
          position: absolute;
          width: 40rpx;
          height: 30rpx;
          color: #fff;
          background-color: #1989fa;
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: 20rpx;
          border-radius: 20rpx;
        }
      }
    }

    .product-bottom-actions {
      flex: 1;
      height: 100rpx;
      display: flex;
      justify-content: center;

      .product-bottom-actions-snap-up {
        width: 90%;
        border-radius: 40rpx;
        height: 80rpx;
        margin: auto;
        display: flex;
        justify-content: center;
        background-color: #1989fa;
        color: #fff;
        align-items: center;
        font-size: 30rpx;
        /* 新增：过渡动画，让效果更丝滑 */
        transition: all 0.2s ease;
        /* 防止点击时文字模糊 */
        transform: translateZ(0);
      }

      /* 点击时的样式 */
      .product-bottom-actions-snap-up:active {
        background-color: #5aa5b7;
        /* 背景色加深 */
        transform: scale(0.98);
        /* 轻微缩小 */
        opacity: 0.9;
        /* 透明度降低 */
      }


      .product-bottom-actions-cart {
        width: 45%;
        display: flex;
        justify-content: center;
        align-items: center;
        color: #1989fa;
        border: 2rpx solid #1989fa;
        background-color: #fff;
      }

      .product-bottom-actions-purchase {
        width: 45%;
        display: flex;
        justify-content: center;
        background-color: #1989fa;
        color: #fff;
        align-items: center;
      }
    }
  }
}

.swiper-container {
  width: 750rpx;
  height: 750rpx;
  position: relative;

  .swiper-container-indicator {
    position: absolute;
    right: 20rpx;
    bottom: 20rpx;
    background-color: #c9c9c9;
    color: #fff;
    padding: 15rpx;
    border-radius: 25rpx;
    font-size: 25rpx;
  }
}

.product-price-common {
  display: flex;
  box-sizing: border-box;
  padding: 20rpx;
  background-color: #fff;
  align-items: center;
  padding-bottom: 0;

  .product-price-common-tag {
    background-color: #db463b;
    color: #fff;
    font-size: 20rpx;
    padding: 8rpx 6rpx;
    border-radius: 10rpx;
    margin-right: 10rpx;
  }

  .product-price-discount {
    display: flex;
    color: #db463b;

    .product-price-discount-symbol {
      font-size: 40rpx;
    }

    .product-price-discount-value {
      font-size: 40rpx;
    }
  }

  .product-price-original {
    display: flex;
    font-size: 25rpx;
    color: #999999;
    text-decoration: line-through;
    margin-left: 10rpx;

    .product-price-original-symbol {}

    .product-price-original-value {}
  }
}

.product-price-not-common {
  height: 120rpx;
  display: flex;
  width: 100vw;
  padding-left: 20rpx;
  padding-right: 20rpx;
  box-sizing: border-box;
  background-color: #fff;

  .product-price-not-common-left {
    height: 120rpx;
    width: 500rpx;
    border-top-left-radius: 20rpx;
    border-bottom-left-radius: 20rpx;
    background-color: #449af0;
    box-sizing: border-box;
    -webkit-clip-path: polygon(100% 0%, 95% 50%, 100% 100%, 0 100%, 0% 50%, 0 0);
    clip-path: polygon(100% 0%, 95% 50%, 100% 100%, 0 100%, 0% 50%, 0 0);
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 60rpx;
    padding-top: 10rpx;
    overflow: hidden;

    .product-price-not-common-left-promotion-price {
      color: #fff;
      font-size: 32rpx;
    }

    .product-price-not-common-left-original-price-and-snapped-up-info {
      margin-left: 100rpx;
      display: flex;
      flex-direction: column;

      .product-price-not-common-left-original-price {
        color: #fff;
        text-decoration: line-through;
        margin-bottom: 10rpx;
        font-size: 22rpx;
      }

      .product-price-not-common-left-snapped-up-info {
        color: #fff;
        font-size: 22rpx;
      }
    }

    .product-price-not-common-left-icon {
      margin-left: auto;

      .product-price-not-common-left-icon-image {
        width: 160rpx;
        height: 160rpx;
        filter: brightness(120%);
      }
    }

    .product-price-not-common-left-tip {
      position: absolute;
      left: 0;
      top: 0;
      font-size: 20rpx;
      padding: 8rpx 20rpx;
      color: #fff;
      background-color: #2a8ef1;
      border-top-left-radius: 20rpx;
      border-bottom-right-radius: 20rpx;
    }
  }

  .product-price-not-common-right {
    background-color: #fff;
    height: 120rpx;
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    .product-price-not-common-right-count-down {
      font-size: 17rpx;
      color: #1989fa;
      letter-spacing: 2rpx;
      margin-bottom: 15rpx;
    }

    .product-price-not-common-right-progress-bar {
      width: 100%;
      display: flex;
      position: relative;
      background-color: #f0f5ff;
      border-radius: 13rpx;
      .product-price-not-common-right-progress-bar-progress {
        font-size: 17rpx;
        text-align: right;

        color: #1989fa;
        letter-spacing: 2rpx;
        width: 180rpx;
        height: 25rpx;
        border-radius: 13rpx;
        background: linear-gradient(120deg,
            #1e88e5 0%,
            /* 起始深蓝色 */
            #64b5f6 35%,
            /* 浅蓝 */
            #fff59d 65%,
            /* 浅黄 */
            #ffc107 100%
            /* 结束亮黄色 */
          );
      }
      .product-price-not-common-right-progress-bar-text{
        position: absolute;
        font-size: 17rpx;
        color: #1989fa;
        right: 10rpx;
        letter-spacing: 2rpx;
      }
    }
  }
}


.product-name {
  background-color: #fff;
  padding: 20rpx;
  box-sizing: border-box;
  font-size: 30rpx;
  font-weight: 500;
}

.product-tip-region {
  background-color: #fff;
  padding: 20rpx;
  padding-top: 0;
  box-sizing: border-box;

  .product-header-product-tip {
    background-color: #e2f9fa;
    padding: 15rpx;
    padding-left: 20rpx;
    padding-top: 16rpx;
    box-sizing: border-box;
    border-radius: 20rpx;
    display: flex;
    justify-content: space-between;
    align-items: center;

    .product-header-product-tip-text {
      font-weight: 600rpx;
      font-size: 25rpx;
      color: #04bbd6;
    }

    .product-header-product-tip-image {
      width: 85rpx;
      height: 85rpx;
    }
  }
}

.product-cell-region {
  background-color: #fff;
  margin: 0 20rpx;
  margin-top: 15rpx;
  border-radius: 20rpx;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  box-sizing: border-box;
  padding-right: 20rpx;

  .product-cell-region-item {
    display: flex;
    align-items: center;
    padding: 25rpx 0;

    .product-cell-region-label {
      font-size: 23rpx;
      font-weight: bold;
      width: 110rpx;
      color: #9a9a9a;
      text-align: center;
    }

    .product-cell-region-text {
      font-size: 23rpx;
      font-weight: normal;
    }

    .product-parameter-region {
      .product-parameter-region-item {
        display: flex;
        font-size: 25rpx;

        .product-parameter-region-item-label {
          color: #262626;
        }

        .product-parameter-region-item-text {
          color: #646464;
        }
      }
    }

    .product-cell-region-icon {
      margin-left: auto;
    }
  }
}

.product-service-guarantee {
  background-color: #f0f0f0;
  padding-top: 23rpx;
  padding-bottom: 23rpx;
  margin: 0 20rpx;
  border-radius: 25rpx;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  padding: 23rpx;

  .product-service-guarantee-text {
    font-size: 25rpx;
    margin-left: 10rpx;
    color: #999;
  }

  .product-service-guarantee-icon {}

  .product-service-arrow {
    margin-left: auto;
  }
}

.product-detail-image-title {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 20rpx 0;

  .product-detail-image-title-left {
    background: linear-gradient(to right, #f5f5f5, #ccc);
    height: 10rpx;
    width: 150rpx;
    border-top-right-radius: 999rpx;
    border-bottom-right-radius: 999rpx;
  }

  .product-detail-image-title-text {
    margin-left: 15rpx;
    margin-right: 15rpx;
  }

  .product-detail-image-title-right {
    background: linear-gradient(to right, #ccc, #f5f5f5);
    height: 10rpx;
    width: 150rpx;
    border-top-left-radius: 999rpx;
    border-bottom-left-radius: 999rpx;
  }
}

.price-explanation {
  height: 300rpx;
  background-color: #fff;
  padding: 13rpx;
  font-size: 20rpx;
  color: #666666;
}

.product-parameter {
  height: 100%;
  width: 100vw;
  background-color: #fff;
  position: relative;

  .product-parameter-header {
    padding: 30rpx 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 4rpx solid #f5f5f5;
    position: relative;

    .product-parameter-header-title {
      font-weight: bold;
      font-size: 30rpx;
    }

    .product-parameter-close-button {
      position: absolute;
      right: 40rpx;
      top: 50%;
      transform: translateY(-50%);
    }
  }

  .product-parameter-body {
    height: 812rpx;
    background-color: #f5f5f5;
    box-sizing: border-box;
    padding: 40rpx 50rpx;

    .product-parameter-body-item {
      font-size: 28rpx;
      display: flex;
      align-items: center;
      margin-bottom: 40rpx;

      .product-parameter-body-item-label {
        width: 200rpx;
        color: #686868;
      }

      .product-parameter-body-item-value {
        .checkRegistrationIdPhotoButton {
          background-color: #1989fa;
          padding: 10rpx;
          color: #fff;
          border-radius: 15rpx;
        }
      }
    }

  }

  .product-parameter-bottom {
    position: absolute;
    bottom: 0;
    width: 100vw;
    height: 120rpx;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;

    .product-parameter-bottom-button {
      width: 700rpx;
      height: 90rpx;
      color: #fff;
      font-size: 35rpx;
      display: flex;
      align-items: center;
      margin: 0 auto;
      justify-content: center;
      border-radius: 40rpx;
      background-color: #1989fa;
    }
  }
}

.product-pop-up {
  height: calc(900rpx - env(safe-area-inset-bottom));
  width: 100vw;
  position: relative;

  .product-pop-up-info {
    display: flex;
    padding: 30rpx;

    .product-pop-up-info-image {
      border: 3rpx solid #1989fa;
    }

    .product-pop-up-price-tag-name {
      margin-left: 20rpx;
      display: flex;
      flex-direction: column;

      .product-pop-up-price {
        display: flex;
        align-items: center;
        color: #db463b;

        .product-pop-up-price-discount {
          display: flex;
          align-items: baseline;

          .product-pop-up-price-symbol {
            font-size: 25rpx;
          }

          .product-pop-up-price-value {
            font-size: 32rpx;
          }
        }

        .product-pop-up-price-original {
          display: flex;
          align-items: baseline;
          color: #999;
          text-decoration: line-through;
          font-size: 20rpx;
          margin-left: 20rpx;

          .product-pop-up-price-symbol {}

          .product-pop-up-price-value {}
        }
      }

      .product-pop-up-tag-content {
        display: flex;
        margin-top: 10rpx;

        .product-pop-up-tag {
          font-size: 20rpx;
          padding: 5rpx;
          color: #db463b;
          border: 2rpx solid #db463b;
        }
        .product-pop-up-seckill-tag{
          font-size: 20rpx;
          padding: 5rpx;
          color: #1989fa;
          border: 2rpx solid #1989fa;
        }

        .product-pop-up-tag-hide {
          opacity: 0;
        }
      }

      .product-pop-up-name {
        font-size: 30rpx;
        margin-top: 20rpx;
        white-space: nowrap;
        overflow: hidden;
        width: 500rpx;
        text-overflow: ellipsis;
      }
    }
  }

  .product-pop-up-close-button {
    position: absolute;
    right: 30rpx;
    top: 30rpx;
  }

  .product-pop-up-tabs-region {
    display: flex;
    padding-left: 30rpx;
    padding-right: 30rpx;
    padding-bottom: 10rpx;
    border-bottom: 2rpx solid #e7e7e7;

    .product-pop-up-tabs-region-item {
      color: #9b9b9b;
      font-size: 30rpx;
    }

    .product-pop-up-tabs-region-item-active {
      color: #1989fa;
      position: relative;

      &::after {
        position: absolute;
        content: "";
        position: absolute;
        left: 15%;
        bottom: -15rpx;
        width: 70%;
        height: 4px;
        background-color: #1989fa;
        border-radius: 2rpx;
      }
    }
  }

  .product-pop-up-specification-select-region {
    height: calc(900rpx - env(safe-area-inset-bottom) - 120rpx - 195rpx - 40rpx);
    box-sizing: border-box;
    padding: 20rpx;

    .product-pop-up-specification-select-region-content {
      .product-pop-up-specification-card {
        display: flex;
        justify-content: space-between;
        margin-bottom: 15rpx;
        box-sizing: border-box;
        align-items: center;

        .product-pop-up-specification-info {
          display: flex;
          width: 445rpx;
          height: 100rpx;
          flex-direction: column;
          background-color: #fafafa;
          padding: 15rpx 20rpx;
          border: 2rpx solid #fafafa;
          border-radius: 20rpx;

          .product-pop-up-specification-info-name-and-price {
            display: flex;

            .product-pop-up-specification-info-name {
              font-size: 24rpx;
            }

            .product-pop-up-specification-info-price {
              color: #9f9c9d;
              display: flex;
              align-items: baseline;
              margin-left: auto;

              .product-pop-up-specification-info-price-symbol {
                font-size: 15rpx;
              }

              .product-pop-up-specification-info-price-value {
                font-size: 24rpx;
              }
            }
          }

          .product-pop-up-specification-info-manufacturingDate {
            margin-top: auto;
            font-size: 22rpx;
            color: #9f9c9d;
          }
        }

        .product-pop-up-specification-info-active {
          border: 2rpx solid #1989fa;
        }

        .product-pop-up-specification-stepper {
          box-sizing: border-box;

          .product-pop-up-specification-stock-tip {
            font-size: 25rpx;
            text-align: right;
            color: #999;
            margin-top: 14rpx;
          }
        }
      }
    }
  }

  .product-pop-up-sum-price {
    color: #db463b;
  }

  .product-pop-up-bottom-region {
    position: absolute;
    bottom: 0;
    background-color: #fff;
    height: 120rpx;
    width: 100vw;
    display: flex;
    justify-content: center;
    align-items: center;

    .product-pop-up-bottom-region-button {
      width: 700rpx;
      height: 90rpx;
      color: #fff;
      font-size: 35rpx;
      display: flex;
      align-items: center;
      margin: 0 auto;
      justify-content: center;
      border-radius: 40rpx;
      background-color: #1989fa;
    }

    .product-pop-up-bottom-region-button-active {
      background-color: #1989fa;
      /* 背景色加深，模拟按压 */
      transform: scale(0.98);
      /* 轻微缩放，增强按压感 */
      box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
      /* 内阴影，模拟凹陷效果（可选） */
    }
  }
}

.service-guarantee-pop-up {
  height: 100%;
  width: 100vw;
  background-color: #fff;
  position: relative;

  .service-guarantee-pop-up-header {
    padding: 30rpx 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 4rpx solid #f5f5f5;
    position: relative;

    .service-guarantee-pop-up-header-title {
      font-weight: bold;
      font-size: 30rpx;
    }

    .service-guarantee-pop-upr-close-button {
      position: absolute;
      right: 40rpx;
      top: 50%;
      transform: translateY(-50%);
    }
  }

  .service-guarantee-pop-up-content {
    box-sizing: border-box;
    padding: 0 20rpx;

    .service-guarantee-item {
      margin-top: 30rpx;

      .service-guarantee-item-header {
        display: flex;
        align-items: center;
        justify-content: space-between;

        .service-guarantee-item-title {
          font-size: 30rpx;
        }

        .service-guarantee-item-check-more {
          font-size: 25rpx;
          color: #999;
        }
      }

      .service-guarantee-item-body {
        font-size: 30rpx;
        margin-top: 20rpx;
        color: #999;
      }
    }
  }

  .service-guarantee-pop-up-bottom {
    position: absolute;
    bottom: 0;
    width: 100vw;
    height: 120rpx;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;

    .service-guarantee-pop-up-bottom-button {
      width: 700rpx;
      height: 90rpx;
      color: #fff;
      font-size: 35rpx;
      display: flex;
      align-items: center;
      margin: 0 auto;
      justify-content: center;
      border-radius: 40rpx;
      background-color:#1989fa;
    }
  }

}